Windows Media Services banner art

Controlling streaming behavior

You can control how players and distribution servers receive a stream by modifying one or more Fast Streaming properties. Fast Streaming refers to a group of technologies that improve the perceptive quality of streaming media to the user. By adding a modifier to the path of a source, you can specify certain Fast Streaming properties of individual files and live streams.

You add a modifier the same way you would add a query string to an URL. After the URL, add a question mark character (?), followed by the modifier and the modifier value:

http://server/source?modifier=value

You can combine multiple modifiers with ampersands (&):

http://server/source?modifier1=value&modifier2=value

The modifier can be added anywhere a source value is used or entered, such as a src attribute value in a server-side or client-side playlist. If you need to use multiple modifiers in a playlist, you must do it differently than you would in a URL. This is because playlists are Extensible Markup Language (XML) documents in which the ampersand character (&) has a defined behavior. Therefore, you must explicitly specify the ampersand character and then separate the entries with a semicolon. For example, two modifiers combined would look like this:

http://server/source?modifier1=value&modifier2=value

The following table describes the Fast Streaming modifiers.

Modifier Client Value description
WMBitrate Distribution servers

Players

Specifies the bit rate that the server cannot exceed when delivering a stream in bits per second. When the Fast Cache feature is enabled, you can use this modifier to restrict the amount of bandwidth that the server can use. For example, WMBitrate=100000 restricts the bit rate to a maximum of 100 kilobits per second (Kbps). If this value is greater than any of the per stream bandwidth limits set for the server or publishing point, content will be streamed at the bit rate specified by the limit rather than at the bit rate specified by the modifier.
WMCache Players Specifies whether Fast Cache streaming is enabled. A value of 1 explicitly enables Fast Cache streaming; 0 explicitly disables Fast Cache streaming. When Fast Cache is enabled, the server streams data faster than the client plays it back. The extra data is stored in a cache on the client. By caching data ahead of playback, the client is better able to handle inconsistencies in network bandwidth. If Fast Cache has been disabled on the server, this modifier will have no effect.
WMContentBitrate Distribution servers

Players

Specifies the maximum bit rate that can be streamed from a source, in bits per second. This modifier is most commonly used with multiple-bit-rate (MBR) streaming content. No stream with a bit rate higher than the value given can be streamed. For example, if an MBR file contains streams at 80 Kbps, 100 Kbps, and 300 Kbps, and WMContentBitrate is set at 150 Kbps, the highest bit rate stream that can be delivered is the 100-Kbps stream. If this value is greater than any of the per stream bandwidth limits set for the server or publishing point, content will be streamed at the bit rate specified by the limit rather than at the bit rate specified by the modifier.
WMFecPktsPerSpan Players Defines how many forward error correction (FEC) packets are sent along with the content data packets defined by WMFecSpan. This value must be less than or equal to value specified for WMFecSpan, with a minimum value of 1 and a maximum value of 24.
WMFecSpan Players Specifies the number of content data packets that will be covered by the FEC data packets. This value cannot exceed the limit specified in the Forward Error Correction properties dialog box of the server. The maximum value and default setting is 24. If this value is set to 0, FEC is disabled.
WMReconnect Distribution servers

Players

Specifies the number of times the client should attempt to reconnect to a source if the connection is lost. For example, if the value of this modifier is 3, the client will attempt to reconnect three times. If the value is -1, the client will attempt to reconnect an infinite number of times. If the value is 0, the client will not attempt to reconnect.

You can use a value of 0 if you plan to use a rollover URL. For example, if you configure backup encoders to act as content rollovers, you can set a WMReconnect value of 0 for the primary encoder. If you do that, the client will not attempt to reconnect to that encoder if the connection is lost. Instead the client will immediately roll over to the backup encoder. For example:

<?wsx version="1.0"?>
<smil>
    <media src="http://encoder1:8081?WMReconnect=0" />
    <media src="http://encoder2:8081" />
</smil>
WMThinning Players Specifies whether stream thinning is enabled. If a value of 1 is set, stream thinning is used if necessary to maintain as much playback quality as possible when network conditions deteriorate and bandwidth availability is reduced. If a value of 0 is set, stream thinning is disabled. With stream thinning, the server gracefully reduces the bit rate of a stream to accommodate inconsistencies in the current bandwidth available to a client. 

Related topics


© 2000-2003 Microsoft Corporation. All rights reserved.